import { contextBridge, ipcRenderer } from 'electron';

// 暴露API给渲染进程
contextBridge.exposeInMainWorld('electronAPI', {
  // 日志功能
  writeLog: (message) => ipcRenderer.send('write-log', message),
  
  // 窗口控制
  minimizeWindow: () => ipcRenderer.invoke('window-minimize'),
  maximizeWindow: () => ipcRenderer.invoke('window-maximize'),
  closeWindow: () => ipcRenderer.invoke('window-close'),
  quitApp: () => ipcRenderer.invoke('quit-app'),
  getWindowState: () => ipcRenderer.invoke('get-window-state'),
  
  // 开发者工具控制
  toggleDevTools: () => ipcRenderer.invoke('toggle-devtools'),
  openDevTools: () => ipcRenderer.invoke('open-devtools'),
  isDevToolsOpened: () => ipcRenderer.invoke('is-devtools-opened'),
  closeDevTools: () => ipcRenderer.invoke('close-devtools'),
  
  // 外部链接
  openExternal: (url) => ipcRenderer.invoke('open-external', url),
  
  // 平台信息
  platform: process.platform,
  
  // 应用信息
  getAppVersion: () => ipcRenderer.invoke('get-app-version'),
  
  // 文件和目录选择
  selectFile: (options) => ipcRenderer.invoke('select-file', options),
  selectDirectory: () => ipcRenderer.invoke('select-directory'),
  
  // 环境信息
  isDev: () => ipcRenderer.invoke('is-dev'),
  isDevSync: () => ipcRenderer.sendSync('is-dev')
});